Symbolic Evaluation of LISP Functions with Side Effects for Verification
نویسندگان
چکیده
In t h i s paper we present a symbolic evaluator of LISP func t i ons . I t can handle d a t a a l t e r i n g funct ions of the RPLACA type, i . e . funct ions that change one datas t ruc ture by rep lac ing par ts of i t by other s t ruc tu res that w i l l themselves not be changed f u r t h e r , at leas t not permanently. The s ta te desc r ip t i on language uses f i r s t o r d e r predicate ca l cu lus . I t i s argued tha t symbolic eva luat ion in terms of t h i s language, although t h e o r e t i c a l l y adequate, i s not f eas ib l e in genera l , since i t may requ i re extremely complicated spec i f i ca t i ons fo r r e a l l i f e funct ions w i th side e f f e c t s . Examples are given of the spec i f i ca t i ons needed to v e r i f y several versions of SUBSTAD, a non-copying SUBST. Keywords; LISP, symbolic eva lua t i on , v e r i f i c a t i o n o f d a t a a l t e r i n g func t i ons , predicate ca l cu lus , frame problem.
منابع مشابه
The Conceptual Calculus For Automatic Program Understanding
The CAN system for automatic understanding of LISP programs is presented. Uhen applied on a LISP program, CAN needs no assertion about what the program is intended to do. CAN's general task is to associate e meaning to a program, from which it is able to diagnose semantlc properties (unused portions of code, undefinitions, underused programs, classes Of data for which evaluation of an expressio...
متن کاملVerified Computer Algebra in Acl2. Gröbner Bases Computation
In this paper, we present the formal verification of a Common Lisp implementation of Buchberger’s algorithm for computing Gröbner bases of polynomial ideals. This work is carried out in the Acl2 system and shows how verified Computer Algebra can be achieved in an executable logic.
متن کاملCommon Lisp Object System Specification: 2. Functions in the Programmer Interface
The distribution and publication of this document are not restricted. In order to preserve the integrity of the specification, any publication or distribution must reproduce this document in its entirety, preserve its formatting, and include this title page. " The X3J13 Committee hereby accepts chapters 1 and 2 of the Common Lisp Object System, as defined in document 88-002R, for inclusion in t...
متن کاملCategorical Models for Local Names
This paper describes the construction of categorical models for the nu-calculus, a language that combines higher-order functions with dynamically created names. Names are created with local scope, they can be compared with each other and passed around through function application, but that is all. The intent behind this language is to examine one aspect of the imperative character of Standard M...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1981